Welcome to pandas!

7.13 实例2 按条件筛选各分组的记录

import pandas as pd

df=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.7.13 实例2 按条件筛选各分组的记录.xlsx" )

print (df)

t=df.groupby( "班级" ).apply( lambda d:d[(d.语文+d.数学)>(d.语文+d.数学).mean()]).droplevel( level = 0 )

print (t)

返回:

班级 姓名 语文 数学
0 3班 欧进兴 84 95
1 1班 叶翠 70 56
2 3班 毕红霞 52 55
3 1班 朱耀逊 69 75
4 1班 曾庆文 77 62
5 1班 沈惠娟 50 100
6 3班 王启英 79 75
7 2班 覃夏洁 95 52
8 3班 何祖万 63 79
9 2班 陈飘 72 58
10 3班 张飞 95 54
11 2班 姚兴艳 91 66
12 3班 吴廷 92 75
13 2班 胡碟 100 93
14 2班 张晓聪 81 100
15 2班 石丽萍 80 81
16 1班 李永焕 80 89
17 1班 林春丽 91 87

班级 姓名 语文 数学
16 1班 李永焕 80 89
17 1班 林春丽 91 87
13 2班 胡碟 100 93
14 2班 张晓聪 81 100
0 3班 欧进兴 84 95
6 3班 王启英 79 75
12 3班 吴廷 92 75